The present invention relates to a method of determining a route to be tested in a load module test and, more particularly, to a method of determining a route to be tested in a load module test which is capable of storing the tested route paths and efficiently executing untested route paths at the time of testing a load module (program).
When a program for solving a large problem is composed, it is usually divided into several processes at the stage of planning the program, the modules obtained as a result of division are programmed by different one or more programmers separately from each other, and the programmed modules are compiled and linked through a linkage editor to produce the program for solving the problem.
Such a programming method adopting a division and group work system produces the following advantages:
(1) It is possible to shorten the time required for programming.
(2) Since it is possible to test the modules separately from each other before they are compiled and linked, debugging is facilitated and an accurate testing is enabled.
(3) It is not necessary to translate all the programs at each testing, and it is enough to pick out only an incomplete module and translate and check it.
FIG. 38 is an explanatory view of the above-described programming method. A problem is divided into four modules A to D, the modules (program modules) are programmed by programmers A to D, respectively, and the program modules are compiled and linked to produce a program for solving the problem.
In this manner, each program module is a partial or whole program which can be modified and replaced without influencing another partial program. There are three types of modules in such a program module. That is, they are (1) a source module, (2) an object module, and (3) a load module, as shown in FIG. 39. The source module is an input unit to a language translator (compiler), and it is composed of a series of statements written by a programmer. The object module is a module of a machine language which is output from a compiler, and the load module is produced by linking more than one object modules, or an object module and a load module by a linkage editor.
In order to assure the quality of a program, it is essential to test all the route paths of a load module. It is therefore required to execute the testing of all the route paths as quickly as possible. The route path is the minimum branch condition section produced when the source modules constituting the load module are compiled.
However, in a large-scale testing of a load module which is constituted by a plurality of source modules, since the load module contains a large number of branch instructions, subroutine execution instructions, etc., the routes to be tested become complicated. For this reason, it takes a long time to test the routes and, besides, it is sometimes the case that only a specific route path is tested plural times.
It is therefore necessary to extract the information for effectively testing all the route paths and to provide the information to the test executing means. Conventionally, however, there has existed no testing system which is capable of testing a load module in the minimum time by reducing the items to be tested to the minimum. In the prior art, tested route paths are stored, the coverage ratio (=the number of tested route paths/the number of all the route paths) is measured, and on the basis of the coverage ratio information, a tester tests an untested route path from his experience or at random.